From: Kenichi Handa Date: Tue, 17 Nov 2009 04:16:33 +0000 (+0000) Subject: (x_produce_glyphs): Consider face-remapping when falling X-Git-Tag: archive/raspbian/1%29.2+1-2+rpi1~1^2~324^2~9422 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https:/www.github.com/%22bookmarks:///%22http:/www.example.com/cgi/%22https:/www.github.com/%22bookmarks:/?a=commitdiff_plain;h=c9953843c1eec9d1544311950401b6397e54413a;p=emacs.git (x_produce_glyphs): Consider face-remapping when falling back to the default font in case that no suitable font is found. --- diff --git a/src/xdisp.c b/src/xdisp.c index 28fdcfae49d..d2ae9a18fe2 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -21149,12 +21149,18 @@ x_produce_glyphs (it) &char2b, it->multibyte_p, 0); font = face->font; - /* When no suitable font found, use the default font. */ font_not_found_p = font == NULL; if (font_not_found_p) { - font = FRAME_FONT (it->f); - boff = FRAME_BASELINE_OFFSET (it->f); + /* When no suitable font found, display an empty box based + on the metrics of the font of the default face (or what + remapped). */ + struct face *no_font_face + = FACE_FROM_ID (it->f, + NILP (Vface_remapping_alist) ? DEFAULT_FACE_ID + : lookup_basic_face (it->f, DEFAULT_FACE_ID)); + font = no_font_face->font; + boff = font->baseline_offset; } else { @@ -21425,7 +21431,7 @@ x_produce_glyphs (it) at least one column. */ char_width = 1; it->glyph_not_available_p = 1; - it->pixel_width = FRAME_COLUMN_WIDTH (it->f) * char_width; + it->pixel_width = font->space_width * char_width; it->phys_ascent = FONT_BASE (font) + boff; it->phys_descent = FONT_DESCENT (font) - boff; }